home *** CD-ROM | disk | FTP | other *** search
- #include "bbs.h"
-
- extern int gnsflag,MaxDirs,DirScan,StartDir;
-
- /***************************************************************************\
- * *
- * int GetDirSpan(char pass[40]) *
- * *
- \***************************************************************************/
-
- int GetDirSpan(char *pass)
- {
- char str[200];
- int mystat;
-
- if(pass[0]=='\0') {
- sprintf(str,"Directories: (1-%d), (All), (Upload), (Enter)=none? ",MaxDirs);
- AEPutStr(str);
- mystat=LineInput("",str,8,KEYBOARD_TIMEOUT);
- if(mystat<0) { return(NO_CARRIER); }
- if(strlen(str)==0) {
- AEPutStr("\r\n");
- return(FAILURE);
- }
- } else
- strcpy(str,pass);
-
- gnsflag=CheckForNS(str); /* check for Non-Stop */
-
- if((str[0]=='U')||(str[0]=='u')) { /* Scan only upload directory */
- DirScan=MaxDirs;
- StartDir=DirScan;
- goto MNCont;
- }
- if((str[0]=='A')||(str[0]=='a')) { /* scan all dirs */
- DirScan=MaxDirs;
- StartDir=1;
- goto MNCont;
- }
- if((str[0]=='L')||(str[0]=='l')) {
- DirScan=0;
- StartDir=0;
- goto MNCont;
- }
- if((str[0]=='H'||str[0]=='h')&&User.Sec_Status>200) {
- DirScan=-1;
- StartDir=-1;
- goto MNCont;
- }
- //strcat(str," ");
- DirScan=atoi(str);
- //sscanf(str,"%d",&DirScan);
- if(DirScan>MaxDirs||DirScan<1) {
- AEPutStr("No such directory.\r\n\r\n");
- return(FAILURE);
- }
- StartDir=DirScan;
-
- MNCont:
- gnsflag=CheckForNS(str);
- return(SUCCESS);
- }
-